package com.atguigu.gmall.cart.service;

import com.atguigu.gmall.model.cart.CartInfo;

import java.util.List;

/**
 * 购物车服务的接口类
 */
public interface CartService {

    /**
     * 登陆用户新增购物车
     * @param skuId
     * @param num
     * @param userId
     * @return
     */
    public void addCart(Long skuId, Integer num,String userId);

    /**
     * 临时用户新增购物车
     * @param skuId
     * @param num
     * @param userId
     */
    public String addCartTemp(Long skuId, Integer num,String userId);

    /**
     * 删除购物车数据
     * @param userId
     * @param skuId
     */
    public void deleteCart(Long userId,Long skuId);

    /**
     * 查询购物车信息
     * @param userId
     * @param tempUserId
     * @return
     */
    public List<CartInfo> getCartInfoList(String userId,String tempUserId);

    /**
     * 修改购物车的数据
     * @param skuId
     * @param num
     * @param userId
     * @return
     */
    public void updateCartInfo(Long skuId , Integer num,String userId);

    /**
     * 查询用户选中的购物车信息
     * @param userId
     * @return
     */
    public List<CartInfo> getChooseCartInfoList(Long userId);

}
